package com.atdel.demo33;


import java.util.Arrays;

/**
 * @BelongsProject: java_study
 * @BelongsPackage: com.atdel.demo32
 * @Author: Del
 * @CreateTime: 2025-03-30  17:16
 * @Description: 测试类
 * @Version: 1.0
 */
public class ZooManagement {
    public static void main(String[] args) {
        // 创建动物
        Lion lion = new Lion("辛巴");
        lion.setSleepStatus(SleepStatus.Status.HEALTHY);
        lion.setHealthStatus(HealthStatus.Status.GOOD);

        Tiger tiger = new Tiger("泰格");
        tiger.setSleepStatus(SleepStatus.Status.INSOMNIA);
        tiger.setHealthStatus(HealthStatus.Status.FAIR);

        Dog dog = new Dog("旺财");
        dog.setSleepStatus(SleepStatus.Status.HEALTHY);
        dog.setHealthStatus(HealthStatus.Status.EXCELLENT);

        Shark shark = new Shark("大白");
        shark.setSleepStatus(SleepStatus.Status.INSOMNIA);
        shark.setHealthStatus(HealthStatus.Status.POOR);

        Dolphin dolphin = new Dolphin("小海");
        dolphin.setSleepStatus(SleepStatus.Status.HEALTHY);
        dolphin.setHealthStatus(HealthStatus.Status.GOOD);

        Pigeon pigeon = new Pigeon("小白");
        pigeon.setSleepStatus(SleepStatus.Status.HEALTHY);
        pigeon.setHealthStatus(HealthStatus.Status.EXCELLENT);

        Hen hen = new Hen("小花");
        hen.setSleepStatus(SleepStatus.Status.INSOMNIA);
        hen.setHealthStatus(HealthStatus.Status.FAIR);

        // 创建饲养员
        MammalKeeper mammalKeeper = new MammalKeeper("张饲养员",
                Arrays.asList(lion, tiger, dog));

        MarineAnimalKeeper marineKeeper = new MarineAnimalKeeper("李饲养员",
                Arrays.asList(shark, dolphin));

        BirdKeeper birdKeeper = new BirdKeeper("王饲养员",
                Arrays.asList(pigeon, hen));

        // 饲养员工作
        System.out.println("===== 哺乳动物饲养员工作 =====");
        mammalKeeper.feed();
        mammalKeeper.patrol();
        mammalKeeper.healthCheck();

        System.out.println("\n===== 海洋动物饲养员工作 =====");
        marineKeeper.feed();
        marineKeeper.patrol();
        marineKeeper.healthCheck();

        System.out.println("\n===== 飞禽动物饲养员工作 =====");
        birdKeeper.feed();
        birdKeeper.patrol();
        birdKeeper.healthCheck();
    }
}
